<!DOCTYPE html>
<html>
<head>
    <title>我的游记</title>
    <meta charset="utf-8"/>
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
    <link rel="stylesheet" href="/js/bootstrap/css/bootstrap.min.css">
    <script src="/js/jquery/jquery.min.js"></script>
    <script src="/js/bootstrap/js/bootstrap.min.js"></script>
    <script src="/js/plugins/jrender/jrender.js"></script>
    <link rel="stylesheet" href="/css/font/css/font-awesome.min.css"/>
    <link rel="stylesheet" href="/css/reset.css"/>
    <link rel="stylesheet" href="/css/userTravels.css"/>
    <link rel="stylesheet" href="/js/plugins/dialog/dialog.css"/>
    <script src="/js/plugins/dialog/dialog.min.js"></script>
    <script src="/js/common.js"></script>
</head>

<body>
    <div class="search-head">
        <div class="row nav-search">
            <div class="col">
                <a href="profiles.html">
                    <span><i class="fa fa-chevron-left"></i></span>
                </a>
            </div>
            <div class="col">
                <span>我的游记</span>
            </div>
            <div class="col"></div>
        </div>
    </div>

    <div class="container travels">
        <dl class="list" render-loop="list">
            <dd>
                <!-- 渲染a标签由于底层渲染不同的结果,需要使用函数渲染 -->
                <a href="editTravels.html" render-key="list.id" render-fun="handle">
                    <img render-src="list.coverUrl">
                    <h6 class="title" render-html="list.title"></h6>
                    <p>最近更新时间: <span render-html="list.lastUpdateTime"></span>
                        <span class="span-right">
                        <i class="fa fa-heart"></i><span>0</span>收藏
                        <i class="fa fa-thumbs-o-up"></i><span>0</span>点赞</span>
                    </p>
                </a>
            </dd>
        </dl>
    </div>

<script>
    var currentPage = 1; //当前页
    var pages; //总页数
    var travels; //当前页面的游记对象

    $(function () {
        //从本地session中取 出缓存的对象,渲染到界面中
        var user = JSON.parse(sessionStorage.getItem("user"));
        //发ajax请求获取当前用户的所有游记
        $.get("/users/"+user.id+"/travels", {pageSize: 3}, function (data) {
            //把返回的数据渲染到界面
            renderView(data);
            //返回的data是pageInfo对象,内部包含了分页需要用到的数据
            pages = data.pages;
            travels = data.list;
        }, "json");

        //当屏幕滚到最底部时执行函数
        $(window).scroll(function () {
            //判断是否到底部
            if (isEnd()) {
                //判断是否有下一页
                if (currentPage < pages) {
                    //设置当前页+1,并且发送ajax请求获取下一页数据
                    currentPage++;
                    $.get("/users/"+user.id+"/travels", {currentPage: currentPage, pageSize: 3}, function (data) {
                        //返回的数据中只有翻页后的数据,没有当页中的数据,直接渲染原来的数据就没有了
                        //原来的数据+当前返回的数据,一起渲染
                        //不能直接把数组传入,因为底层渲染需要一个叫list的属性
                        $.merge(travels, data.list);
                        renderView({list: travels});
                    }, "json");
                } else {
                    $(document).dialog({
                        type : "notice",
                        infoText: "已经到底部了",
                        autoClose: 1500,
                        position: "center"
                    });
                }
            }
        });
    });

    //渲染界面
    function renderView(data) {
        $(".travels").renderValues(data, {
            //属性名就是函数的名称
            handle: function (ele, value) {
                //动态渲染a标签
                $(ele).attr("href", "/mine/editTravels.html?id="+value);
            }
        });
    }
</script>
</body>
</html>
